package com.zkh.myutils.net.ftp;

/**
 * FTP内置命令
 * @author zkh
 */
interface FTPCmd {
	/**
	 * 中断数据连接程序
	 */
	String ABORT = "ABOR";
	/**
	 * 系统特权帐号：ACCT <code>account</code>
	 */
	String ACCOUNT = "ACCT";
	/**
	 * 为服务器上的文件存储器分配字节：ALLO <code>bytes</code>
	 */
	String ALLOCATE = "ALLO";
	/**
	 * 添加文件到服务器同名文件：APPE <code>filename</code>
	 */
	String APPEND = "APPE";
	/**
	 * 改变服务器上的父目录：CDUP <code>dirPath</code>
	 */
	String CHANGE_TO_PARENT_DIRECTORY = "CDUP";
	/**
	 * 改变服务器上的工作目录：CWD <code>dirPath</code>
	 */
	String CHANGE_WORKING_DIRECTORY = "CWD";
	/**
	 * 删除文件：DELE <code>filename</code>
	 */
	String DELETE_FILE = "DELE";
	/**
	 * 主动模式扩展。IPV6：EPRT <code>address</code>
	 */
	String ACTIVE_MODE_EXTEND = "EPRT";
	/**
	 * 被动模式扩展。IPV6
	 */
	String PASSIVE_EXTEND = "EPSV";
	/**
	 * 帮助命令
	 */
	String HELP = "HELP";
	/**
	 * 如果是文件名，列出文件信息；如果是目录，则列出文件列表。<br>
	 * LIST <code>name</code>
	 */
	String LIST = "LIST";
	/**
	 * 修改时间
	 */
	String MODIFY_TIME = "MDTM";
	/**
	 * 传输模式（S=流模式，B=块模式，C=压缩模式）<br>
	 * MODE <code>mode</code>
	 */
	String TRANSPORT_MODE = "MODE";
	/**
	 * 创建指定目录：MKD <code>directory</code>
	 */
	String MAKE_DIRECTORY = "MKD";
	/**
	 * 列出指定目录内容
	 */
	String NAME_LIST = "NLST";
	/**
	 * 无操作
	 */
	String NO_OPERATE = "NOOP";
	/**
	 * 登录密码：PASS <code>password</code>
	 */
	String PASSWORD = "PASS";
	/**
	 * 被动模式。IPV4
	 */
	String PASSIVE = "PASV";
	/**
	 * 主动模式。IPV4：PORT <code>address</code>
	 */
	String ACTIVE_MODE = "PORT";
	/**
	 * 显示当前工作目录
	 */
	String PRINT_WORKING_DIRECTORY = "PWD";
	/**
	 * 退出登录
	 */
	String LOGOUT = "QUIT";
	/**
	 * 重新初始化登录状态连接
	 */
	String REINITIALIZE = "REIN";
	/**
	 * 由特定偏移量重启文件传递：REST <code>offset</code>
	 */
	String RESTART = "REST";
	/**
	 * 下载文件：RETR <code>filename</code>
	 */
	String RETRIEVE = "RETR";
	/**
	 * 删除指定目录：RMD <code>directory</code>
	 */
	String DELETE_DIRECTORY = "RMD";
	/**
	 * 对旧路径重命名：RNFR <code>old path</code>
	 */
	String RENAME_FROM = "RNFR";
	/**
	 * 对新路径重命名：RNTO <code>new path</code>
	 */
	String RENAME_TO = "RNTO";
	/**
	 * 由服务器提供的特殊参数：SITE <code>params</code>
	 */
	String SITE_PARAMETERS = "SITE";
	/**
	 * 挂载指定文件结构：SMNT <code>pathname</code>
	 */
	String STRUCTURE_MOUNT = "SMNT";
	/**
	 * 在当前程序或目录上返回信息：STAT <code>directory</code>
	 */
	String STATUS = "STAT";
	/**
	 * 储存（复制）文件到服务器：STOR <code>filename</code>
	 */
	String STORE = "STOR";
	/**
	 * 储存文件到服务器名称上
	 */
	String STORE_UNIQUE = "STOU";
	/**
	 * 数据结构（F=文件，R=记录，P=页面）：STRU <code>type</code>
	 */
	String DATA_STRUCTURE = "STRU";
	/**
	 * 返回服务器使用的操作系统
	 */
	String SYSTEM = "SYST";
	/**
	 * 数据类型（A=ASCII，E=EBCDIC，I=BINARY）
	 */
	String DATA_TYPE = "TYPE";
	/**
	 * 登录的用户名
	 */
	String USERNAME = "USER";
}
